#/bin/python3
import time,random,sys
import threading

state = input("Start Game? \n(Yes/No):")
if state == "Yes" or state == "yes" or state == "Y" or state == "y":
    print('\
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■Game,Start!■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■')
Exp = int(1) #初始Exp每秒增加值
Lev = int(0) #初始Player等级
class MyThread(threading.Thread):
    def __init__(self,Exp,Player_ID,Power,Till,Spirit,Intellect):
        super(MyThread, self).__init__() 
        self.Exp=Exp
        self.Player_ID=Player_ID
        self.Power=Power
        self.Till=Till
        self.Spirit=Spirit
        self.Intellect=Intellect
        self.Go()

    def Go(self):
        output = sys.stdout
        output_mes = sys.stdout
        global Exp,Lev
        while 1:
            output.write("\rName:\033[1;32;48m%s\033[0m\
                        Lev:\033[1;32;48m%s\033[0m\
                        Power:\033[1;33;48m%s\033[0m\
                        Till:\033[1;31;48m%s\033[0m\
                        Spirit:\033[1;37;48m%s\033[0m\
                        Intellect:\033[1;34;48m%s\033[0m\
                        Exp: \033[1;32;48m%s/S\033[0m\
                        Exp  \033[1;34;48m%s/%s(+%s/S)\033[0m" \
                         % (self.Player_ID, Lev, self.Power+(Lev+1), self.Till+(Lev+1), self.Spirit+(Lev+1), self.Intellect+(Lev+1), Exp, self.Exp,
                            (Lev + 1) * 25, Exp))

            self.Exp+=Exp
            time.sleep(1)
            if self.Exp >= (Lev+1)*25:
                self.Exp=0
                Lev+=1
                Exp+=1
                print("\n\033[1;34;48m%s\033[0m  ↑↑↑Lev UP!↑↑↑ All Attributes ↑1\n"%self.Player_ID)

class player_status():
    def __init__(self,Lev):
        self.ID()
        self.Lev=Lev

    def random_num(self):
        self.stat=[]
        for i in {'Power','Till','Spirit','Intellect'}:
          num = random.randrange(1, 11) / 10
          self.stat.append(i)
          self.stat.append(num)
        return self.stat

    def base_status(self):
        print("\033[1;32;48m■■■■■■■■■Game is Start!■■■■■■■■■\033[0m\n\n")
        self.random_num()
        MyThread(Exp,self.Player_ID,self.stat[1],self.stat[3],self.stat[5],self.stat[7])

    def ID(self):
        self.Player_ID = input('Please input Player Name:')
        if len(self.Player_ID) <= 1:
            print('Sorry!Player Name must greater than 1 character')
            self.ID()
        else:
            print('Game Loading...')
            time.sleep(1)
            self.base_status()
if __name__ == '__main__':
  player_status(Lev)
